/**
 *
 * @description: 服务器脚本
 * @author: junyong.hong
 * @createTime: 2018/3/26
 * @version: 1.0.0.0
 * @history:
 *    1、
 *    2、
 *
 */
import gulp from 'gulp';
import gulpif from 'gulp-if';
// 启动服务器功能
import liveserver from 'gulp-live-server';
import args from './util/args';

// 创建一个serve服务
gulp.task('serve',(cb)=>{
    // 如果不是处在监听的情况下
    if(!args.watch) return cb();

    // 创建一个服务 --harmony要在当前命令行执行控制脚本 目录在server/bin/www
    var server = liveserver.new(['--harmony','server/bin/www']);
    // 启动服务器
    server.start();

    // 热更新
    // 监听server/public/**/*.js 和 'server/views/**.*.ejs' 目录下的文件
    gulp.watch(['server/public/**/*.js','server/views/**/*.ejs'],function (file) {
        // 通知服务器做相关的动作
        server.notify.apply(server,[file]);
    });

    // 路由改变，监听需要重启服务的文件
    gulp.watch(['server/routes/**/*.js','server/app.js'],function () {
        server.start.bind(server)()
    });
})